package com.example.chessbattleplatform.web.Sys_User.Pojo.mapper;

import com.baomidou.mybatisplus.annotation.*;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;


@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder

@TableName(value = "users", schema = "MY_DATABASE")
public class User {

    @TableId(type = IdType.AUTO, value = "user_id")
    private Long id; // 用户ID，主键，自增

    private String userName; // 用户名，唯一且不能为空
    private String password; // 密码，不能为空
    private String email; // 邮箱，唯一且不能为空
    private String role; // 角色，默认值为 'user'
    private String introduction; // 简介
    private String avatar; // 头像
    private Boolean userDelete; // 是否注销，默认false 注销为true

    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createdAt; // 创建时间，默认当前时间戳

    @TableField(fill = FieldFill.INSERT_UPDATE)
    private LocalDateTime updatedAt; // 更新时间，每次更新时自动设置为当前时间戳
}